Computing devices such as mobile phones, smartphones, and tablet computers have become ubiquitous in today's society. In fact, many individuals use a number of computing devices to perform various tasks during the course of their day. For instance, a person/user may use a laptop for work, a tablet for entertainment, a smartphone for phone calls, etc. Further, given the convergence of capabilities amongst the various computing devices, the user may use any of the computing devices to perform many of their tasks. For example, devices such as smart televisions, mobile phones, tablets, laptops, and others may be capable of streaming video from the internet.
While computing devices have become able to communicate through various communication protocols, there has been no efficient way for these devices to interoperate. Instead, each computing device has traditionally been completely independent. For example, each computing device typically has had its own operating system to manage the unique hardware resources available only to that computing device.